1. Technical Field
This invention relates to file synchronisation and more particularly to a method of synchronising files and folders held in a plurality of locations.
2. Related Art
Users of data files often need to be able to work with the files in more than one location. While files may be remotely accessed and operated upon it is not always possible to effect a suitable network connection to a data warehouse or file server on which working files may be stored. Accordingly, a typical user may have portable computer apparatus in which copies of files with which the user works are held and a similar set of files are held in a network accessible location or in a desktop computer. While it is possible to synchronise files worked upon in a single location by copying across all of the files from the portable computer, for example, to a file server or vice versa, this may not be effective where multiple locations are involved. Other synchronisation programs having a limited functionality restricted to two locations require significant manual intervention from a user if more than one set of files has been altered. In general computer file systems, for example, the Window™ FAT (file allocation table) store very limited date and time information in relation to a file. Thus, windows FAT stores data defining date and time on which a file is modified, accessed or created, the FAT system does not recognise a file which is renamed or moved.
In a conference paper from Mobicom 98, Proceedings of the 4th Annual ACM/IEE international conference on Mobile Computing and Networking, Dallas Tex., Oct. 25-30, 1998, pages 98-108 there is disclosed a file synchronizer which purports to maintain a plurality of file stores in step. However, in common with many such synchronizers, the synchronization is by master-slave relationship. Accordingly in a conflict between data files in the master/slave relationship either the master will always prevail or manual intervention will be required. The system disclosed is also not suitable for maintaining more than two file stores in synchronization since any update in one file store results in a new “master” store having conflicting information for a third file store.
U.S. Pat. No. 5,909,689 (Ryzin) uses two lists and comparison of temporal information for the purposes of isolating conflicts but refers such conflicts to user for resolution. U.S. Pat. No. 6,061,686 (Gauvin et al) discloses a synchronizer for web pages but operates by assuming that the server on the World Wide Web is always more up to date than the cache therefore updating in a pure master/slave relationship.